package com.time.auth.infra.basic.service;

import com.time.auth.infra.basic.entity.AuthUserRole;

import java.util.List;

/**
 * (AuthUserRole)表服务接口类
 *
 * @author: HuangQi
 * @date: Created in 10:09 2025/9/23
 * @description: (AuthUserRole)表服务接口
 */
public interface AuthUserRoleService {

    /**
     * 根据用户id查询用户的所有角色的id
     *
     * @param id       用户id
     * @param userType 用户类型
     * @return 角色id列表
     */
    List<Long> queryByUserId(Long id, String userType);

    /**
     * 新增用户角色关联
     *
     * @param authUserRole 用户角色关联信息
     * @return 新增结果
     */
    Integer insert(AuthUserRole authUserRole);

    /**
     * 根据角色ID和用户类型更新用户角色信息
     *
     * @param authUserRole 用户角色关联信息
     * @return 更新结果
     */
    Integer updateByRoleId(AuthUserRole authUserRole);

    /**
     * 根据用户ID更新用户角色信息
     *
     * @param authUserRole 用户角色关联信息
     * @return 删除结果
     */
    Integer deleteByUserId(AuthUserRole authUserRole);

    /**
     * 根据用户ID更新用户角色信息
     *
     * @param authUserRole 用户角色关联信息
     * @return 更新结果
     */
    Integer updateByUserId(AuthUserRole authUserRole);
}
